Biometric Adjustments for Touchscreens

ABSTRACT

In some embodiments, a touchscreen may display a graphical user interface with one or more input options and may detect which input options are selected by a user by detecting a user&#39;s contact on the touchscreen. The system may determine a new graphical user interface configuration to increase the size and/or spacing of the input options. In some embodiments, one or more of the input options may be removed to increase the space available to increase the size of the other input options. In some embodiments, the system may maintain a history of input option use to determine which input options to remove. In some embodiments, the new graphical user interface configuration may include smaller (and/or additional) input options (e.g., if the contact areas are detected as consistently within the displayed input options).

BACKGROUND

1. Field of the Invention

The present invention is directed to input systems; and moreparticularly, it is directed to touchscreen input systems.

2. Description of the Related Art

Electronic devices such as mobile phones (e.g., the iPhone™, Blackberry™and Android™ phones), global positioning system (GPS) devices, personaldigital assistants (PDAs), and computer systems (including desktop andmobile computers) may use touchscreens for input. Touchscreens allowusers to use their finger (or, for example, a stylus) to press adisplayed input option (such as an on-screen icon of a virtualkeyboard). For example, mobile phones may display a numeric keypad on atouchscreen and a user may enter a phone number by pressing on thetouchscreen at positions corresponding to numbers on the displayednumeric keypad. Devices such as PDAs may include a touchscreen with adisplayed alpha-numeric keypad to receive text, numbers, etc. for entryof data into electronic appointment calendars, contacts, etc.

While touchscreens provide convenience, they may be challenging to useif the displayed input options are too small for a particular user (thismay especially be the case with smaller touchscreens used in portableelectronic devices). For example, a user with large fingers or poorhand-eye coordination may have difficulty pressing a specific inputoption without the user's fingertip overlapping another input option.Because users have different sized fingers and press down with differentlevels of force (resulting in different contact areas on the touchscreenfor different users) it may be difficult to design a touchscreen that issuitable to a variety of users.

SUMMARY

Various embodiments of systems, methods, and computer-readable storagemedia for touchscreen input systems are disclosed. Touchscreens may beused to receive user input for a variety of electronic devices. Thetouchscreens may display a graphical user interface with one or moreinput options (such as icons) and may detect which input options areselected by a user by detecting a user's contact on the touchscreen. Theuser's contact with the touchscreen may result in a detectable contactarea on the touchscreen. The system may detect a position of the contactarea and make one or more biometric measurements of the contact area(e.g., measurements of the size/shape of the contact area). The positionof the contact area may be correlated with the displayed input optionsto determine which input option the user selected. If the contact areais too large, it may overlap multiple displayed input options and maytherefore be difficult to accurately correlate to the input option theuser intended to select. If the contact area is overlapping multipleinput options, the system may determine a new graphical user interfaceconfiguration to increase the size and/or spacing of the input options.Other reasons for increasing the size and/or spacing of the inputoptions are also contemplated (e.g., if the user input is being receivedslowly from the user or if the user is making multiple input mistakes).In some embodiments, one or more of the input options may be removed toincrease the space available to increase the size of the other inputoptions. In some embodiments, the system may maintain a history of inputoption use to determine which input options to remove. In someembodiments, the new graphical user interface configuration may includesmaller (and/or additional) input options (e.g., if the contact areasare detected as consistently within the displayed input options, if theuser's input is faster than a specified threshold, if the user is notmaking multiple input mistakes, etc).

In various embodiments, determining a new graphical user interfaceconfiguration may include the system detecting the position of thecontact area corresponding to a user's input and making biometricmeasurements of the contact area to determine a size/shape of thecontact area. In some embodiments, the system may average a history ofbiometric measurements of at least two past detected contact areas.Determining a second graphical user interface configuration may includedetermining positions, sizes, and/or spacings of the input options tobetter accommodate the detected contact areas.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a touchscreen interface for a mobile phone, accordingto an embodiment.

FIG. 2 illustrates a touchscreen and contact areas of user input,according to an embodiment.

FIG. 3 illustrates a touchscreen with large contact areas of user input,according to an embodiment.

FIG. 4 illustrates a touchscreen with contact areas from a stylus,according to an embodiment.

FIG. 5 illustrates a touchscreen with a graphical user interface usinglarger input options, according to an embodiment.

FIG. 6 illustrates a touchscreen with a graphical user interface usinglarger input options and a smaller subset of input options, according toan embodiment.

FIGS. 7 a-b illustrate a graphical user interface accessible in multiplemenus, according to an embodiment.

FIG. 8 illustrates a graphical user interface with smaller input optionsand additional input options, according to an embodiment.

FIG. 9 a illustrates a graphical user interface for an electronic game,according to an embodiment.

FIG. 9 b illustrates a graphical user interface for the electronic gameusing larger input options, according to an embodiment.

FIG. 10 a illustrates a graphical user interface for a musicalelectronic device, according to an embodiment.

FIG. 10 b illustrates a graphical user interface with smaller inputoptions and additional input options, according to an embodiment.

FIG. 10 c illustrates a graphical user interface with larger and fewerinput options, according to an embodiment.

FIG. 11 illustrates a flowchart for determining a second graphical userinterface configuration, according to an embodiment.

FIG. 12 illustrates an electronic device, according to an embodiment.

While the invention is susceptible to various modifications andalternative forms, specific embodiments are shown by way of example inthe drawings and are herein described in detail. It should beunderstood, however, that drawings and detailed description thereto arenot intended to limit the invention to the particular form disclosed,but on the contrary, the invention is to cover all modifications,equivalents and alternatives falling within the spirit and scope of thepresent invention as defined by the appended claims.

DETAILED DESCRIPTION OF EMBODIMENTS

FIG. 1 illustrates an embodiment of touchscreen device 100 withgraphical user interface 107 a. Graphical user interface 107 a mayinclude various input options (such as input options 105 a-d) displayedon touchscreen 103. Devices 100 with touchscreens 103 may receive inputby sensing a position of a user touch on touchscreen 103 in which agraphical user interface 107 is displayed. “Graphical user interface107” is used herein to generally refer to graphical user interfaces(such as graphical user interfaces 107 a, b, c, etc). Graphical userinterfaces 107 may include input options 105 such as icons representingkeyboard keys (e.g., input options 105 a-d), application icons, etc.“Input options 105” is used herein to generally refer to input options(e.g., input options 105 a-k). Touchscreen devices 100 may includemobile devices (such as mobile phones, personal digital assistants(PDAs), global positioning system (GPS) devices, etc.) electronic gamedevices, automatic teller machines (ATMs), computer systems, etc. whichuse a touchscreen 103 for user input. Touchscreens 103 on touchscreendevices 100 may detect the position of a user touch (e.g., from a userfinger or from an object such as a stylus) on touchscreen 103. Aprocessor (e.g., processor 1210 in FIG. 12) coupled to touchscreen 103may execute program instructions to determine which input option 105corresponds to the detected position received from touchscreen 103.

In various embodiments, touchscreens 103 may include capacitivetouchscreens (including capacitive grid touchscreens), resistivetouchscreens, surface acoustic wave touchscreens, and infraredtouchscreens. Touchscreens may detect touch by detecting changes incurrent, sound waves, capacitance, etc. and determining a positioncorresponding to the change. For example, resistive touchscreens may usemultiple conductive layers that form an electronic connection when auser presses on the touchscreen (and correspondingly presses twoconductive layers together at a point). Surface acoustic wavetouchscreens detect a touch by detecting a resulting change inultrasonic waves passing over the touchscreen. Capacitive touchscreensmay detect changes in the capacitance of a touchscreen resulting fromthe user's touch. Devices 100 may use the change in current, etc. todetect a position of a user's touch on the touchscreen 103.

FIG. 2 illustrates an embodiment of touchscreen 103 and contact areas(e.g., contact areas 201 a-b) corresponding to a user touch ontouchscreen 103. “Contact area 201” is used herein to generally refer tocontact areas (e.g., contact areas 201 a, b, etc.) that representlocations on touchscreen 103 where a user contact (e.g., by finger,stylus, etc.) is detected. FIG. 2 illustrates contact areas 201 that mayprovide clear indications as to the intended user input. For example,contact areas 201 a,b are within the boundary of corresponding displayedinput options 105 a,b. Therefore, touchscreen device 100 may correctlydetermine that the user intended to input “2” corresponding to contactarea 201 a and “o” corresponding to contact area 201 b. As illustratedin FIG. 2, user inputs may be used to input information such as contactinformation. For example, touchscreen device 100 may be a mobile phone,and the user may input new contact information (e.g., for “John”) intothe mobile phone using touchscreen 103. While contact areas 201 aregenerally represented as point contacts (e.g., corresponding to a fingerpress on touchscreen 103), other contact area types are alsocontemplated. For example, the user may move their finger acrosstouchscreen 103 to produce a line of contact.

FIG. 3 illustrates an embodiment of touchscreen 103 with contact areas201 that are larger than contact areas 201 of FIG. 2. As seen in FIG. 3,contact areas 201 resulting from the touch of some users may overlapmultiple input options 105 (e.g., contact areas 201 c-d). Larger contactareas 201 may result from larger user fingers, a larger applicationforce, etc. These larger contact areas 201 may make it difficult fordevice 100 to determine which input option 105 the user intended toenter. In some embodiments, device 100 may be operable to select inputoption 105 that has the greatest percentage of contact area overlap. Forexample, device 100 may select “p” as a result of contact area 201 c(even though the user may have intended to enter “o”). As anotherexample, device 100 may select “b” as a result of contact area 201 d(even though the user may have intended to enter “n”). Themisinterpreted inputs may result in device 100 indicating “Jphb” insteadof the intended “John” as seen in FIG. 3.

FIG. 4 illustrates touchscreen 103 with contact areas 201 from a stylus,according to an embodiment. In some embodiments, the user may use anobject such as a stylus to produce a small point of contact (e.g., seecontact area 201 e-f). Because a stylus has a smaller contact areafootprint than a user's fingerprint, using a stylus may make it easierfor a user to select input options 105 from among smaller input options.However, even though the stylus has a smaller contact area footprint,the user may still have a difficult time selecting input options 105.For example, older or physically impaired individuals may havedifficulty seeing input options 105 and/or may have difficultycoordinating their hands to select specific input options 105 fromsmaller input options. Other users who are not necessarily older orphysically impaired may also find themselves in situations that makeinput option selection difficult (e.g., in a moving car, in a low lightenvironment, etc). As an example, the user may press “p” (see contactarea 201 e) when they intended to press “o” or press “b” (see contactarea 2010 when they intended to press “n”. These misinterpreted inputsmay, for example, result in device 100 indicating “Jphb” instead of theintended “John” as seen in FIG. 4.

In some embodiments, device 100 may be operable to detect when a usermakes a mistake (e.g., presses an input option 105 that does notcorrespond to the input option 105 the user intended to press). Mistakesmay be detected through actions taken by the user to correct the mistake(e.g., backspace key, accepting a device-provided correction option suchas a correct spelling for a misspelled word, etc). Other mistakedeterminations may also be used (e.g., device 100 may predict whichinputs are mistakes based on predetermined/predicted patterns of input).In the example shown in FIG. 2, the device may determine that the usercorrectly pressed the intended input options 105 to provide input forthe mobile phone number for a new contact. For example, thedetermination may have been based on the user not having to makecorrections to the entered contact information. Conversely, in FIG. 3and FIG. 4, the user may have needed to backspace to correct thespelling of “John”. The backspace may have indicated the presence of oneor more errors (e.g., by comparing the corrected “John” to theoriginally entered “Jphb”, the device may be able to determine that theuser's contact areas for “o” and “n” were incorrectly entered by theuser as “p” and “b”, respectively. In some embodiments, device 100 maybe able to detect the number of corrections and/or where the correctionswere applied and may use this information in determining the graphicaluser interface configuration (e.g., by determining which input options105 need to be resized).

FIG. 5 illustrates touchscreen 103 with graphical user interface 107 busing larger input options 105 than graphical user interface 107 a,according to an embodiment. For example, input options 105 e and 105 fmay be larger than corresponding input options 105 a and 105 b inFIG. 1. Larger input options 105 may make it easier for a user withlarge fingers or who is pressing down hard on touchscreen 103 (resultingin a larger contact area) to select a specific input option 105 ongraphical user interface 107. Larger input options 105 may also make iteasier for a visually impaired individual to see input options 105 forbetter selection. Other reasons for increasing the size and/or spacingof input options 105 are also contemplated (e.g., if the user input isbeing received slowly from the user indicating the user is havingtrouble locating specific input options). Larger input options 105 mayalso be easier to select by someone with limited hand-eye coordinationor who is in a low-light environment, etc. In some embodiments, a subsetof input options 105 may be made larger (e.g., input option 105 g may bethe same size as original input option 105 c). For example, the morecommonly used input options 105 may be made larger and the less usedinput options 105 may be kept the same size (or made smaller).

In some embodiments, contact area 201 corresponding to the user touchand biometric measurements of contact area 201 (e.g., size/shape ofcontact area 201) may be detected and used by device 100 to determine aconfiguration for graphical user interface 107. The biometricmeasurements of contact area 201 may correspond to the biometricmeasurements of the user's fingerprint. In some embodiments, theconfiguration for graphical user interface 107 may include which inputoptions 105 are to be displayed, the size of input options 105, thearrangement of input options 105, etc. In some embodiments, if device100 determines the user's contact area 201 is too large for the currentgraphical user interface configuration, device 100 may provide a newgraphical user interface configuration. For example, as displayed inFIG. 5, device 100 may increase the size of input options 105 (e.g., seegraphical user interface 107 b). In some embodiments, the biometricmeasurements may also indicate to device 100 which fingers the user isusing for input. For example, device 100 may store characteristicshapes/positions for thumb inputs, forefinger inputs, etc., and maycompare these characteristic shapes/positions to the shapes of contactareas 201 detected. If device 100 detects the user is using their thumbsfor input, device 100 may propose/implement a graphical user interfaceconfiguration that is easier for thumb inputs (e.g., with larger inputoptions 105, more space between input options 105, and/or with moreinput options 105 toward an edge of touchscreen 103 and fewer toward thecenter).

In some embodiments, device 100 may also adjust other aspects of thedisplay to accommodate the new graphical user interface configuration.For example, device 100 may reduce the size of output display area 107.Other accommodations may also be made (e.g., less information may bedisplayed on output display 107, output display 107 may be madebrighter, may use a larger font, etc). In some embodiments, outputdisplay area 107 may be on a separate screen or may be displayed on thesame screen as graphical user interface 107. In some embodiments, device100 may automatically adjust graphical user interface 107 and otherdisplay characteristics. In some embodiments, device 100 may suggest adifferent graphical user interface 107 and/or display characteristics toa user who may then accept or reject the suggestions. For example,device 100 may display a new graphical user interface 107 along with amessage such as “Keep new input interface (Y/N)?” and wait for a userinput. In some embodiments, device 100 may provide a reason for why anew graphical user interface 107 is being suggested.

FIG. 6 illustrates an embodiment of touchscreen 103 with graphical userinterface 107 c using larger input options 105 and a smaller subset ofinput options 105 on graphical user interface 107 c. In someembodiments, device 100 may remove some of input options 105 ingraphical user interface 107 to make additional room to enlarge theremaining input options 105 (or a subset of the remaining input options105). Device 100 may determine which input options 105 are used lessfrequently than the other input options 105 and may remove the lessfrequently used input options 105. Conversely, device 100 may determinewhich input options 105 are used more frequently and remove the leastused input options 105. In some embodiments, device 100 may store ahistory of input options 105 used and analyze the history to determinewhich input options 105 are used more frequently (or less frequently).The frequently used input options 105 (or a subset of the frequentlyused input options 105) may be made larger. In some embodiments, adefault subset of input options 105 may be removed (e.g., withoutanalyzing a history of past usage). Less commonly used input options 105such as the tilda key, backslash key, etc. may be preset to be removedwhen a larger input option graphical user interface configuration isused. As shown in FIG. 6, input options 105 v and 105 w may be evenlarger than corresponding input options 105 e and 105 f (shown in FIG.5) which may be larger than original corresponding input options 105 aand 105 b (shown in FIG. 1). Input option 105 x may be larger than inputoption 105 g (which may be the same size as input option 105 c). In someembodiments, input options 105 may remain the same size, but additionalspace may be provided between input options 105. For example, bydisplaying fewer input options 105 at a time, there may be additionalspace to distribute between the displayed input options 105. Theadditional space may reduce the overlap of contact area 201 on inputoptions 105 the user did not intend to select which may result in aneasier determination of input option 105 the user intended to select. Insome embodiments, device 100 may also change an error threshold forgraphical user interface 107. For example, if contact areas 201 aredetected to be large, the error threshold for determining which inputoption 105 was selected might be increased. The increased errorthreshold may, for example, assign more surrounding area to each inputoption 105 for device 100 to analyze when determining which input option105 corresponds to contact area 201.

FIGS. 7 a-b illustrate graphical user interfaces 107 d-e accessible inmultiple menus, according to an embodiment. To make input options 105larger, device 100 may split input options 105 of one graphical userinterface 107 across multiple graphical user interfaces 107 accessiblethrough different menus. For example, input options 105 from graphicaluser interface 107 a may be made available in graphical user interface107 d (e.g., with numerical user options 105 such as input options 105h) and graphical user interface 107 e (shown in FIG. 7 b) (e.g., withletter user options 105 such as 105 i). Menus may be accessed, forexample, by pressing a menu selection input option 105 such as “Numbers”701 a in FIG. 7 a to access graphical user interface 107 d with numbersor “Letters” 701 b in FIG. 7 b to access graphical user interface 107 e.In some embodiments, graphical user interface 107 may be made largeenough to occupy two or more screens and input options 105 may beaccessed through scrolling (e.g., using a side scroll bar or a dialwheel on a mouse). Other access methods for larger graphical userinterfaces 107 are also contemplated.

FIG. 8 illustrates graphical user interface 107 f with smaller inputoptions 105 and with additional input options 105, according to anembodiment. In some embodiments, device 100 may make input options 105smaller and/or increase the number of displayed input options 105. Forexample, if device 100 detects that the user produces a small contactarea (e.g., has smaller fingers, is using a light contact force, and/oris using a stylus), device 100 may provide a graphical user inputconfiguration with smaller and/or additional input options 105. In someembodiments, the additional input options 105 may include input options105 that are not commonly used, but provide increased convenience for auser to have readily available such that the user does not need tosearch through menus, etc. to find a specific input option 105 whenneeded. For example, a user may not frequently access the volumeup/volume down input options, but providing these input options 105 ongraphical user interface 107 f may make it easier for the user to accessthese input options 105 when needed. In some embodiments, device 100 mayadjust the size of input options 105 proportionately to the size of thedetected contact area 201. For example, device 100 may make the widthand/or height of input options 105 large enough to accommodate contactarea 201. In some embodiments, the width/height criteria may allowdevice 100 to shrink input options 105 which may allow device 100 to fitmore input options 105 into graphical user interface 107. In someembodiments, the width/height criteria may result in larger inputoptions 105 and/or fewer displayed input options 105 (which may belarger and/or have additional space between input options 105).

FIG. 9 a illustrates graphical user interface 107 g for an electronicgame, according to an embodiment. Touchscreen device 100 may be used todisplay games for user entertainment. Graphical user interface 107 g maybe used by the user to provide inputs for playing the game. For example,arrow user options 105, “new game”, “return to menu”, etc. may be usedto provide user input. In some embodiments, input options 105 may beincreased in size to accommodate larger contact areas. In addition,input options 105 may be moved or spaced out to accommodate userpatterns. For example, if the user is missing an arrow key and pressingthe empty space near the arrow key (e.g., to the right of the rightarrow key or to the left of the left arrow key), the corresponding inputoption 105 may be increased in size and/or moved. Graphical userinterface 107 may be adjusted mid-game as the intensity of the gamechanges. For example, as the user gets more excited, he may be moreprone to mistakes, while, during slower parts of a game, the user may bemore accurate in input option selection. Graphical user interfaceconfigurations may also be adjusted for different games. For example,the sizes of input options 105 for an action game may be larger thaninput actions for a slower-paced chess or maze application. FIG. 9 billustrates graphical user interface 107 h for the electronic game usinglarger input options, according to an embodiment. For example, inputoption 105 p of graphical user interface 107 h (see FIG. 9 a) is largerthan corresponding user option 105 n in graphical user interface 107 g(see FIG. 9 b).

FIG. 10 a illustrates graphical user interface 107 j for a musicalelectronic device 100, according to an embodiment. In some embodiments,graphical user interface 107 j may be used to provide input into a musicapplication. For example, the user may press input options 105 r and 105q of graphical user interface 107 j to play music (which may bediagrammatically reproduced at 1001 a on the display). If device 100detects contact areas 201 of the user (e.g., contact areas 201 g,h) arewithin the input option boundaries and/or the user is not indicatingmistakes were made, device 100 may determine a new graphical userinterface configuration to include additional input options 105 (and/orsmaller input options 105 as in graphical user interface 107 k displayedin FIG. 10 b). For example, input options 105 t and 105 s representadditional input options 105 provided on graphical user interface 107 kby using the space made available by making input options 105 smaller.If contact areas 201 (e.g., contact area 201 j) overlap with multipleinput options 105, device 100 may determine a new graphical userinterface configuration 107 m with larger input options 105 (and/orfewer input options 105 as displayed in FIG. 10 c). For example, thepiano key input options 105 may have been removed to enlarge and spaceout the remaining percussion input options 105 in graphical userinterface 107 m.

FIG. 11 illustrates a flowchart for determining a second graphical userinterface configuration, according to an embodiment. In variousembodiments, the operations described below may be performed in adifferent order than the illustrated order. The operations describedbelow may be performed programmatically (i.e., by a computer accordingto a computer program). Further, the operations described below may beperformed automatically (i.e., without user intervention). In someembodiments, the operations may be performed by the operating systemand/or at the application level of device 100 (such as a phone and/orcomputer system).

At 1101, device 100 may display graphical user interface 107 with afirst graphical user interface configuration. For example, a defaultconfiguration (such as seen in FIG. 1, FIG. 9 a, and FIG. 10 a) may bedisplayed. In some embodiments, the user may select which input options105 should be displayed in the initial graphical user interface 107.

At 1103, device 100 may detect contact area 201 corresponding to auser's input on graphical user interface 107 (e.g., see contact area 201a on input option 105 b). Information about contact area 201 may bereceived by software interacting (or at least listening) to signals fromtouchscreen 103. For example, the software may be part of an applicationprogramming interface (API) that acts as an interface between thedetected signals (from touchscreen 103) indicative of contact area 201and the operating system. In some embodiments, software objects may beattached to input options 105 for display and the software objects mayinteract with the touchscreen signals to detect characteristics aboutcontact area 201 for adjusting the size/position of the displayed inputoption 105. In some embodiments, device 100 may detect biometricmeasurements of contact area 201 (e.g., size/shape). For example,contact area 201 may include an approximate width times an approximateheight. In some embodiments, the width and height may be measured inpixels (the size of the pixels may depend on the screen resolution oftouchscreen 103). Other measurements of contact area 201 are alsocontemplated. In some embodiments, device 100 may measure only onedimension (e.g., the width or height of contact area 201) to use in thegraphical user interface configuration determination. In someembodiments, the biometric measurements may also indicate to device 100which fingers the user is using for input. For example, device 100 maystore characteristic shapes for thumb inputs, forefinger inputs, etc.,and may compare these characteristic shapes to the shapes of contactareas 201 detected to determine if the detected contact areas 201 havesimilar shapes as the stored characteristic shapes. Other fingerdetermination algorithms are also contemplated.

At 1105, device 100 may average a history of at least two past-detectedcontact areas 201. For example, device 100 may average the past ntouches to determine average characteristics for contact area 201 (e.g.,n may be 10, 20, 50, 100, etc). N may be a system default value and/ormay be user provided. Device 100 may be made more sensitive bydecreasing the value of n (such that the average characteristics reactmore rapidly over time). In some embodiments, device 100 may change thegraphical user interface configuration only after a minimum of n toucheshave occurred since touchscreen device 100 was activated (or, forexample, after a minimum of n touches of recent activity occurring aftera delay of greater than t seconds, where t may be a default or userprovided value (such as 30 seconds)). Characteristics may include anarea calculation of the contact area 201, the width, height, and/orradius of the contact area 201, a characteristic shape of the contactarea (e.g., approximately matches a thumbprint, forefinger print,stylus, etc).

By using averaging, device 100 may adapt to different users. Forexample, if a different user starts using touchscreen device 100, device100 may adapt the graphical user interface configuration for thedifferent user after the different user has touched device 100 at leastn times. Device 100 may then adapt back to the original user's graphicaluser interface configuration after the original user touches touchscreen103 at least n subsequent times. Device 100 may also adapt to differentinput characteristics from the same user. For example, if the same userbegins to have a larger contact area 201 (e.g., because the user ispressing down with greater force or is using different fingers), device100 may adapt the graphical user interface configuration accordingly.

At 1107, device 100 may determine a second graphical user interfaceconfiguration based at least partially on detected contact area 201. Insome embodiments, the second graphical user interface configuration maybe determined based on the average contact area. In some embodiments,device 100 may determine an input option size that will encompassdetected contact area 201 (or average detected contact area). Forexample, device 100 may make the area/size of the input option (hereinthe “input option area”)=factor*contact area or input optionarea=factor*average contact area. The factor may be, for example, 1.2.Other factors are also contemplated (e.g., 1.5, 2, 3, etc.). In someembodiments, the factor may be a default value and/or may be set by theuser. In some embodiments, the factor and/or other characteristics aboutthe graphical user interface configuration may be used for otherapplications. For example, the factor and/or input option spacings maybe determined while the user is playing a game, but the same factorand/or input option spacings may be used during a word processingapplication. In some embodiments, the factor may be adjusted betweenapplications.

The input option area may be used to determine the configuration ofvarious input options. For example, the height and width for thecorresponding area may be determined, for example, according to anequation such as 1.2w*w=input option area where w is the width and 1.2wis the height. Other equations are also contemplated (e.g., 5w*w=inputoption area). In some embodiments, a factor may be determined andapplied directly to only one dimension of input option 105. For example,a factor may be determined based on contact area 105 and applied to thewidth of input option 105 (and, therefore, in some embodiments, theheight may not be adjusted (and vice versa)). Other shapes are alsocontemplated. For example, pi*r*r=input option area where r is theradius of a circular input option (e.g., input option 105 q).

In some embodiments, the new graphical user interface configuration mayinclude a repositioned input option 105. For example, device 100 may usethe biometric measurements to determine which fingers are being used. Ifdevice 100 detects the user is using their thumbs for input, device 100may propose/implement a graphical user interface configuration that iseasier for thumb inputs (e.g., with larger input options 105 and/or withmore input options 105 toward an edge of touchscreen 103 and fewertoward the center). Device 100 may also move input options 105 for otherreasons. For example, if a user has mistakenly pressed one input option105 when another specific input option 105 was intended, device 100 maymove the intended input option 105 to the position the user isanticipating input option 105 to occupy. For example, if a user pressesthe down arrow key when the left arrow key was intended (as determinedby analyzing how the user corrects his mistake), device 100 may switchthe left arrow key and the down arrow key. In some embodiments, device100 may propose new graphical user interface 107 with the moved inputoption 105 and/or point out new graphical user interface 107 to theuser.

Other considerations may also affect the graphical user interfaceconfiguration determination. In some embodiments, device 100 may be ableto detect the number of corrections and/or where the corrections wereapplied and may use this information in determining the graphical userinterface configuration. For example, if the user is continuouslycorrectly pressing the space bar (e.g., input option 105 c), the newgraphical user interface configuration may not increase the size of thespace bar (even though, for example, the size of the other input options105 may be increased).

Speed of input may be another consideration for determining the newgraphical user interface configuration. In some embodiments, if the userinput is being received slowly (e.g., less than a threshold of xinputs/minute, where x is, for example, 70 inputs/minute), device 100may increase the size and/or spacing of input options 105 on graphicaluser interface 107. Other thresholds are also contemplated (e.g., 30inputs/minute, 120 inputs/minute, etc). The thresholds may beapplication sensitive. For example, a fast paced gaming application mayhave a higher threshold (e.g., 200 inputs/minute) and a contact entryapplication may have a lower threshold (e.g., 30 inputs/minute). In someembodiments, device 100 may adjust the input option size/spacing basedon the detected speed. For example, a faster input speed may result insmaller input options 105 than a slower input speed. In someembodiments, input options 105 of graphical user interface 107 may beshrunk and/or additional input options 105 may be included if the inputspeed is above a threshold (e.g., y inputs/minute such as 120inputs/minute). In some embodiments, device 100 may consider a number ofmistakes detected prior to decreasing the input option size.

FIG. 12 is a block diagram illustrating constituent elements of anelectronic device 1200 (e.g., a mobile phone, navigation system, etc.)that is configured to implement embodiments of the systems and methodsdescribed herein. The electronic device 1200 may include one or moreprocessors 1210 implemented using any desired architecture or chip set,such as the SPARC™ architecture, an x86-compatible architecture fromIntel Corporation or Advanced Micro Devices, or an other architecture orchipset capable of processing data. Any desired operating system(s) maybe run on the electronic device 1200, such as various versions of Unix,Linux, Windows® from Microsoft Corporation, MacOS® from Apple Inc., orany other operating system that enables the operation of software on ahardware platform. The processor(s) 1210 may be coupled to one or moreof the other illustrated components, such as a memory 1220, by at leastone communications bus.

In one embodiment, a specialized graphics card or other graphicscomponent may be coupled to the processor(s) 1210. The graphicscomponent may include a graphics processing unit (GPU). Additionally,the electronic device 1200 may include one or more imaging devices. Theone or more imaging devices may include various types of raster-basedimaging devices such as an LCD display (liquid crystal display). In oneembodiment, one or more display devices 1280 may be coupled to theprocessor 1210 and/or graphics component for display of data/images1250.

In one embodiment, program instructions 1222 that may be executable bythe processor(s) 1210 to implement aspects of the techniques describedherein may be partly or fully resident within the memory 1220 at theelectronic device 1200 at any point in time. The memory 1220 may beimplemented using any appropriate medium such as any of various types ofROM or RAM (e.g., DRAM, SDRAM, RDRAM, SRAM, etc.), or combinationsthereof. Any of a variety of storage devices may be used to store theprogram instructions 1222 in different embodiments, including anydesired type of persistent and/or volatile storage devices, such asindividual disks, disk arrays, optical devices (e.g., CD-ROMs, CD-RWdrives, DVD-ROMs, DVD-RW drives), flash memory devices, various types ofRAM, holographic storage, etc. The storage may be coupled to theprocessor(s) 1210 through one or more storage or I/O interfaces. In someembodiments, the program instructions 1222 may be provided to theelectronic device 1200 via any suitable computer-readable storage mediumincluding the memory 1220 and storage devices described above.

The electronic device 1200 may also include one or more I/O interfaces,such as a touchscreen interface 1260 incorporated in the display 1280.In addition, the electronic device 1200 may include one or morecommunication interfaces 1240 providing access to a computer systemand/or network. It should be noted that one or more components of theelectronic device 1200 may be located remotely and accessed via thenetwork. The program instructions may be implemented in variousembodiments using any desired programming language, scripting language,or combination of programming languages and/or scripting languages,e.g., C, C++, C#, Java™, Perl, etc. The electronic device 1200 may alsoinclude numerous elements not shown in FIG. 12.

Although the embodiments above have been described in detail, numerousvariations and modifications will become apparent to those skilled inthe art once the above disclosure is fully appreciated. It is intendedthat the following claims be interpreted to embrace all such variationsand modifications.

1-27. (canceled)
 28. A computer-implemented method, comprising:displaying a graphical user interface that has a first graphical userinterface configuration; detecting a size of a contact areacorresponding to a user input on a touchscreen to select an input optionon the graphical user interface; and determining a second graphical userinterface configuration based at least in part on the size of thedetected contact area of the user input and based on previouscorrections made by the user to correct user input mistakes on the firstgraphical user interface configuration.
 29. The computer-implementedmethod as recited in claim 28, wherein the first and second graphicaluser interface configurations include the input option that is differentin at least one characteristic in each of the first and second graphicaluser interface configurations, and the input option has the samefunction in each of the first and second graphical user interfaceconfigurations.
 30. The computer-implemented method as recited in claim29, wherein the at least one characteristic is size of the input option,and the input option displayed in the second graphical user interfaceconfiguration is a different size than the input option displayed in thefirst graphical user interface configuration.
 31. Thecomputer-implemented method as recited in claim 29, wherein the at leastone characteristic is spacing between displayed input options, and thespacing between the displayed input options in the second graphical userinterface configuration is a different spacing than the spacing betweenthe displayed input options in the first graphical user interfaceconfiguration.
 32. The computer-implemented method as recited in claim28, wherein the first graphical user interface configuration includes atleast one additional input option that is not displayed in the secondgraphical user interface configuration.
 33. The computer-implementedmethod as recited in claim 32, wherein the at least one additional inputoption is determined as being used less than the input option that isincluded in both the first and second graphical user interfaceconfigurations.
 34. The computer-implemented method as recited in claim28, wherein the second graphical user interface configuration includesonly part of the first graphical user interface configuration and isaccessible by selecting a menu option.
 35. The computer-implementedmethod as recited in claim 28, wherein at least one characteristic ofthe second graphical user interface configuration is determined duringuse of a first application, and wherein the at least one characteristicof the second graphical user interface configuration is applied toanother graphical user interface configuration during use of a secondapplication.
 36. The computer-implemented method as recited in claim 28,further comprising averaging at least two previously detected contactareas, and said determining the second graphical user interfaceconfiguration based at least in part on the size of the detected contactarea includes determining the second graphical user interfaceconfiguration based at least in part on an average of the at least twopreviously detected contact areas.
 37. A device, comprising: atouchscreen configured to display a graphical user interface that has afirst graphical user interface configuration; at least one processor toexecute program instructions that are configured to: detect a size of acontact area corresponding to a user input on the touchscreen to selectan input option on the graphical user interface; and determine a secondgraphical user interface configuration based at least in part on thesize of the detected contact area of the user input and based on astored history of input options selected by the user, the stored historyincluding corrections to user inputs on the first graphical userinterface configuration.
 38. The device as recited in claim 37, whereinthe first and second graphical user interface configurations include theinput option that is different in at least one characteristic in each ofthe first and second graphical user interface configurations, and theinput option has the same function in each of the first and secondgraphical user interface configurations.
 39. The device as recited inclaim 38, wherein the at least one characteristic is size of the inputoption, and the input option displayed in the second graphical userinterface configuration is a different size than the input optiondisplayed in the first graphical user interface configuration.
 40. Thedevice as recited in claim 38, wherein the at least one characteristicis spacing between displayed input options, and the spacing between thedisplayed input options in the second graphical user interfaceconfiguration is a different spacing than the spacing between thedisplayed input options in the first graphical user interfaceconfiguration.
 41. The device as recited in claim 37, wherein the firstgraphical user interface configuration includes at least one additionalinput option that is not displayed in the second graphical userinterface configuration.
 42. The device as recited in claim 41, whereinthe at least one additional input option is determined as being usedless than the input option that is included in both the first and secondgraphical user interface configurations.
 43. The device as recited inclaim 37, wherein the second graphical user interface configurationincludes only part of the first graphical user interface configurationand is accessible by selecting a menu option.
 44. The device as recitedin claim 37, wherein at least one characteristic of the second graphicaluser interface configuration is determinable during use of a firstapplication, and wherein the at least one characteristic of the secondgraphical user interface configuration is applied to another graphicaluser interface configuration during use of a second application.
 45. Thedevice as recited in claim 37, wherein the program instructions arefurther executable to average at least two previously detected contactareas, and to said determine the second graphical user interfaceconfiguration based at least in part on the size of the detected contactarea includes to determine the second graphical user interfaceconfiguration based at least in part on an average of the at least twopreviously detected contact areas.
 46. A computer-readable storagememory comprising stored program instructions that arecomputer-executable comprising to: display a graphical user interfacethat has a first graphical user interface configuration; detect a sizeof a contact area corresponding to a user input on a touchscreen toselect an input option on the graphical user interface; and determine asecond graphical user interface configuration based at least in part onthe size of the detected contact area of the user input and based on astored history of input options selected by the user, the stored historyincluding corrections to user inputs on the first graphical userinterface configuration.
 47. The computer-readable storage memory asrecited in claim 46, wherein the first and second graphical userinterface configurations include the input option that is different inat least one characteristic in each of the first and second graphicaluser interface configurations, and the input option has the samefunction in each of the first and second graphical user interfaceconfigurations.